#-*- coding: utf-8 -*-
#-------------------------------------------------------------------------------
# Number：     021
# Name:        正则表达式2
# Author:      SUMMVING
# Email:       summving@gmail.com
# Created:     2013/11/30  22:42
# Copyright:   (c) SUMMVING 2013
# Licence:     GPLv3
#-------------------------------------------------------------------------------

import re

r = r"^abc"
print re.findall(r,'abc')      #输出：['abc']
print re.findall(r,'^abc')     #输出：[]
print re.findall(r,'aa abc')   #输出：[]
print re.findall(r,'^abc ^abcd ^abc')     #输出：[]

r = r"\^abc"                              #反斜杠表示转义字符
print re.findall(r,'^abc ^abcd ^abc')     #输出：['^abc', '^abc', '^abc']

r = r"[0-9]"                              #表示符合0到9的正则
print re.findall(r,'1234567890')          #注意单引号，输出：
                                          #['1', '2', '3', '4', '5', '6', '7', '8', '9', '0']
"""\d 匹配任何十进制数；\D 匹配任何非数字字符
   \s 匹配任何空白字符；\S 匹配任何非空白字符
   \w 匹配任何字母数字字符； \W 匹配任何非字母数字字符"""

r = r"^010-\d\d\d\d\d\d"
print re.findall(r,"010-897546258")         #输出：['010-897546']

r = "^010-\d{8}"                            #将\d重复8次
print re.findall(r,"010-89754625")          #输出：['010-89754625']

r = "ab*"                                   # *号表示将后面的字符重复多次，至少0次
print re.findall(r,'abbbbbcccbbb')          #输出：['abbbbb']

r = "ab+"                                   # +号表示至少匹配一次
print re.findall(r,'abbbbcccbbb')           #输出：['abbbb']

r = r"^010-?\d{8}$"                         # ?号表示横杠可有可无
print re.findall(r,'010-12345678')          #输出：['010-12345678']
print re.findall(r,'01012345678')           #输出：['01012345678']








